package com.dreamers.main;


import com.dreamers.core.Collider2D;
import com.dreamers.core.IRenderListener;
import com.dreamers.core.ITickListener;

import java.awt.*;

public class Behaviour implements IRenderListener, ITickListener {
    private void Awake()
    {
        throw new NotImplementedException();
    }
    private void Start()
    {
        throw new NotImplementedException();
    }


    private void Update()
    {
        throw new NotImplementedException();
    }

    private void FixedUpdate()
    {
        throw new NotImplementedException();
    }

    private void LateUpdate()
    {
        throw new NotImplementedException();
    }

    private void OnEnable()
    {
        throw new NotImplementedException();
    }

    private void OnDisable()
    {
        throw new NotImplementedException();
    }

    private void OnDestroy()
    {
        throw new NotImplementedException();
    }

    /**
     * mouseEvent
     */

    private void OnMouseDown()
    {
        throw new NotImplementedException();
    }

    private void OnMouseDrag()
    {
        throw new NotImplementedException();
    }

    private void OnMouseEnter()
    {
        throw new NotImplementedException();
    }

    private void OnMouseExit()
    {
        throw new NotImplementedException();
    }

    private void OnMouseOver()
    {
        throw new NotImplementedException();
    }

    private void OnMouseUp()
    {
        throw new NotImplementedException();
    }

    private void OnMouseUpAsButton()
    {
        throw new NotImplementedException();
    }


    /**
     * Trigger
     * @param other
     */

    private void OnTriggerEnter(Collider other)
    {
        throw new NotImplementedException();
    }

    private void OnTriggerEnter2D(Collider2D other)
    {
        throw new NotImplementedException();
    }

    private void OnTriggerExit(Collider other)
    {
        throw new NotImplementedException();
    }

    private void OnTriggerExit2D(Collider2D other)
    {
        throw new NotImplementedException();
    }

    private void OnTriggerStay(Collider other)
    {
        throw new NotImplementedException();
    }

    private void OnTriggerStay2D(Collider2D other)
    {
        throw new NotImplementedException();
    }



    private void Reset()
    {
        throw new NotImplementedException();
    }

    private void OnGUI()
    {
        throw new NotImplementedException();
    }

    private void OnAnimatorIK(int layerIndex)
    {
        throw new NotImplementedException();
    }

    private void OnAnimatorMove()
    {
        throw new NotImplementedException();
    }

    private void OnApplicationFocus(Boolean hasFocus)
    {
        throw new NotImplementedException();
    }

    private void OnApplicationPause(Boolean pauseStatus)
    {
        throw new NotImplementedException();
    }

    private void OnApplicationQuit()
    {
        throw new NotImplementedException();
    }

    private void OnAudioFilterRead(float[] data, int channels)
    {
        throw new NotImplementedException();
    }

    private void OnBecameInvisible()
    {
        throw new NotImplementedException();
    }

    private void OnBecameVisible()
    {
        throw new NotImplementedException();
    }

    private void OnBeforeTransformParentChanged()
    {
        throw new NotImplementedException();
    }

    private void OnCanvasGroupChanged()
    {
        throw new NotImplementedException();
    }

    private void OnCanvasHierarchyChanged()
    {
        throw new NotImplementedException();
    }

    private void OnCollisionEnter(Collision other)
    {
        throw new NotImplementedException();
    }

    private  void OnCollisionEnter2D(Collision2D other)
    {
        throw new NotImplementedException();
    }

    private  void OnCollisionExit(Collision other)
    {
        throw new NotImplementedException();
    }

    private  void OnCollisionExit2D(Collision2D other)
    {
        throw new NotImplementedException();
    }

    private void OnCollisionStay(Collision other)
    {
        throw new NotImplementedException();
    }

    private  void OnCollisionStay2D(Collision2D other)
    {
        throw new NotImplementedException();
    }

    private void OnConnectedToServer()
    {
        throw new NotImplementedException();
    }

    private  void OnControllerColliderHit(ControllerColliderHit hit)
    {
        throw new NotImplementedException();
    }

    private void OnDidApplyAnimationProperties()
    {
        throw new NotImplementedException();
    }

    private void OnDrawGizmos()
    {
        throw new NotImplementedException();
    }

    private void OnDrawGizmosSelected()
    {
        throw new NotImplementedException();
    }

    private void OnJointBreak(float breakForce)
    {
        throw new NotImplementedException();
    }

    private  void OnJointBreak2D(Joint2D brokenJoint)
    {
        throw new NotImplementedException();
    }

    private  void OnParticleCollision(GameObject other)
    {
        throw new NotImplementedException();
    }

    private void OnParticleSystemStopped()
    {
        throw new NotImplementedException();
    }

    private void OnParticleTrigger()
    {
        throw new NotImplementedException();
    }

    private void OnParticleUpdateJobScheduled()
    {
        throw new NotImplementedException();
    }

    private void OnPostRender()
    {
        throw new NotImplementedException();
    }

    private void OnPreCull()
    {
        throw new NotImplementedException();
    }

    private void OnPreRender()
    {
        throw new NotImplementedException();
    }

    private void OnRectTransformDimensionsChange()
    {
        throw new NotImplementedException();
    }

    private void OnRenderImage(RenderTexture src, RenderTexture dest)
    {
        throw new NotImplementedException();
    }

    private void OnRenderObject()
    {
        throw new NotImplementedException();
    }

    private void OnServerInitialized()
    {
        throw new NotImplementedException();
    }

    private void OnTransformChildrenChanged()
    {
        throw new NotImplementedException();
    }

    private void OnTransformParentChanged()
    {
        throw new NotImplementedException();
    }

    private void OnValidate()
    {
        throw new NotImplementedException();
    }

    private void OnWillRenderObject()
    {
        throw new NotImplementedException();
    }

    @Override
    public void render(Graphics graphics) {
       IRenderListener.iRenderListenerList.add(this);
    }

    @Override
    public void tick() {
        ITickListener.iTickListenerList.add(this);
    }
}
